package valid

import (
	"regexp"
)

// 2020-10-10 00:00:00
func IsTimeLevel1(d string) bool {
	r, _ := regexp.Compile(`^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$`)
	return r.MatchString(d)
}

// 2020-10-10
func IsTimeLevel2(d string) bool {
	r, _ := regexp.Compile(`^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$`)
	return r.MatchString(d)
}

func FormatTimeLevel2(d string) string {
	r, _ := regexp.Compile(`[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])`)
	return r.FindString(d)
}

// 2020/10/10
func IsTimeLevel3(d string) bool {
	r, _ := regexp.Compile(`^[1-9]\d{3}/(0[1-9]|1[0-2])/(0[1-9]|[1-2][0-9]|3[0-1])$`)
	return r.MatchString(d)
}

// 2020/10/10 00:00:00
func IsTimeLevel4(d string) bool {
	r, _ := regexp.Compile(`^[1-9]\d{3}/(0[1-9]|1[0-2])/(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$`)
	return r.MatchString(d)
}

func IsTimeLevel5(d string) bool {
	r, _ := regexp.Compile(`[0-9]+`)
	return d == "" || r.MatchString(d)
}

func FormatTimeLevel5(d string) string {
	return ""
}

// 长期 | 至今
func IsTimeLevel6(d string) bool {
	r, _ := regexp.Compile(`长期|至今`)
	return r.MatchString(d) || IsTimeLevel2(d)
}

func FormatTimeLevel6(d string) string {
	return FormatTimeLevel2(d)
}

func IsMony(d string) bool {
	r, _ := regexp.Compile(`^(([1-9][0-9]{0,14})|([0]{1})|(([0]\.\d+|[1-9][0-9]{0,14}\.\d+)))万人民币$`)
	return r.MatchString(d)
}
